package com.ckx.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ckx.domain.dto.ArticleAddDto;
import com.ckx.domain.dto.ArticleQueryDto;
import com.ckx.domain.dto.ArticleUpdateDto;
import com.ckx.domain.entity.Article;
import com.ckx.domain.vo.ArticleDetailVo;
import com.ckx.domain.vo.ArticleVo;
import com.ckx.domain.vo.HotArticleVo;
import com.ckx.domain.vo.PageVo;

import java.util.List;

public interface ArticleService extends IService<Article> {
    List<HotArticleVo> hotArticleList();

    PageVo articleList(Integer pageNum, Integer pageSize, Long categoryId);

    ArticleDetailVo getArticleDetail(Long id);

    void addArticle(ArticleAddDto articleAddDto);

    PageVo listByPage(Integer pageNum, Integer pageSize, ArticleQueryDto articleQueryDto);

    ArticleVo getArticleInfo(Long id);

    void updateArticle(ArticleUpdateDto articleUpdateDto);

    void remove4DelFlag(Long id);
}
